1.构造方法
  普遍方法格式:
     修饰符 返回值类型 方法名(形参列表){

     }
  构造方法格式:
     修饰符  所在类的类名(形参列表){


     }
2.构造方法的细节
   a.默认构造方法
        /*
        *   a.所有的new 对象动作都要去调用构造方法
        *   b.如果一个类中没有声明构造方法,那么编译器会在编译时自动加入一个默认构造方法
        *      //空参构造方法
        *      public 类名(){
        *
        *      }
        *   c.如果一个类中声明了构造方法,那么编译器在编译时就不会在添加默认构造方法        */
  b.构造方法和setter方法的区别
      /*  构造方法和setter的方法的区别
        *    1.构造方法主要用来初始化成员变量
        *    2.构造方法是当new对象的时候被调用
        *    3.setter方法我们一般在创建完对象,用其修改属性值*/
  c.构造方法的重载
    /*
     *  构造方法也能构成重载
     *  重载条件:方法名相同,形参列表不同(形参个数,形参顺序,形参类型至少有一个不同)即可
     *  构造方法一般通过new 对象来调用,普通方法一般通过对象来对象
     * */
3.this关键字与this语句
  a.this关键字的作用
    当成员变量和局部变量重名的时候,我们可以通过 this. 来调用成员变量
  b.this语句
    /*
     * 构造方法之间的相互调用:
     *   1.只能通过 this(参数); 来调用其它构造方法
     *   2.this语句必须放在构造方法的第一行
     *   3.普通的方法的调用通过 方法名(参数); 来调用
     * */
4.super关键字与super语句
 a.super关键字作用
   可以通过super关键字来调用父类的非私有成员(成员变量和成员方法)
 b.super语句作用
    /**
     * super语句:
     * 1.在所有的构造方法的第一行默认有一个super();语句
     * 2.super语句可以调用父类的构造方法
     * 3.我们可以通过super(参数)来调用父类的构造方法
     */
 c.super语句的注意事项
   1.构造方法中如果没有super语句,默认在构造方法的第一行会加一个super()语句
   2.在同一个构造方法中this(参数)语句和super(参数)语句都必须放在第一行,那么
     在同一个构造方法中this(参数)语句和super(参数)语句只能有一个
   3.如果在一个构造方法中存在this语句,子类的构造方法是否就不再调用父类的构造方法?
     不是,依然可以调用父类的构造方法
   4.所有的子类的构造方法一定会调用父类的构造方法
     class A/*extends Object*/{
         class A(){
            // super();
         }
     }

